7a5ed76cc074e7c69efccd1f208f634b30ccb17f,plugins/devkit/src/dom/impl/ExtensionDomExtender.java,ExtensionDomExtender,registerField,#DomExtensionsRegistrar#PsiField#,131

Before Change


  private static void registerField(final DomExtensionsRegistrar registrar, @NotNull final PsiField field) {
    final PsiAnnotation[] annotations = field.getModifierList().getAnnotations();
    final PsiConstantEvaluationHelper evalHelper = JavaPsiFacade.getInstance(field.getProject()).getConstantEvaluationHelper();
    for (PsiAnnotation annotation : annotations) {
      final String qName = annotation.getQualifiedName();
      if (qName != null) {
        if (qName.equals(Attribute.class.getName())) {
          final PsiAnnotationMemberValue attributeName = annotation.findAttributeValue("value");
          if (attributeName != null && attributeName instanceof PsiExpression) {
            final Class<String> type = String.class;
            PsiExpression expression = (PsiExpression)attributeName;
            final Object evaluatedExpression = evalHelper.computeConstantExpression(expression, false);
            if (evaluatedExpression != null) {
              registrar.registerGenericAttributeValueChildExtension(new XmlName(evaluatedExpression.toString()), type);
            }
          }
        } else if (qName.equals(Tag.class.getName())) {
          final PsiAnnotationMemberValue attributeName = annotation.findAttributeValue("value");
          if (attributeName != null && attributeName instanceof PsiExpression) {
            PsiExpression expression = (PsiExpression)attributeName;

After Change


      }
      return;
    }
    final PsiAnnotation tagAnno = modifierList.findAnnotation(Tag.class.getName());
    final PsiAnnotation propAnno = modifierList.findAnnotation(Property.class.getName());
    final PsiAnnotation absColAnno = modifierList.findAnnotation(AbstractCollection.class.getName());
    //final PsiAnnotation colAnno = modifierList.findAnnotation(Collection.class.getName()); // todo